package com.xiaoquan.gulimall.search.vo;

import com.xiaoquan.common.to.es.SkuEsModel;
import lombok.Data;

import java.util.ArrayList;
import java.util.List;

/**
 * @authro dxq
 * @date 2021年06月28日 20:12
 */
@Data
public class SearchResult {
    /**
     * 查询到的所有商品信息
     */
    private List<SkuEsModel> products;

    /**
     * 以下是分页信息
     */
    private Integer pageNum; // 当前页面
    private Long total; // 总记录数
    private Integer totalPages; // 总页码
    private List<Integer> pageNavs; // 总页码的集合形式 便于遍历有多少页数据

    private List<BrandVo> brands; // 当前查询到的结果，所涉及到的所有品牌
    private List<CatalogVo> catalog; // 当前查询到的结果，所涉及到的所有分类
    private List<AttrVo> attrs; // 当前查询到的结果，所涉及到的所有属性

    // ======================以上是返回给页面的所有信息===================================

    /**
     * 面包屑导航数据
     */
    private List<NavVo> navs = new ArrayList<>(); // 设置一个默认的数组
    private List<Long> attrIds = new ArrayList<>();

    @Data
    public static class NavVo {
        private String navName;
        private String navValue;
        private String link;
    }

    /**
     * 查询结果所涉及到的所有品牌信息
     */
    @Data
    public static class BrandVo{
        private Long brandId;
        private String brandName;
        private String brandImg;
    }

    /**
     * 查询结果所涉及到的所有分类信息
     */
    @Data
    public static class CatalogVo{
        private Long catalogId;
        private String catalogName;
    }

    /**
     * 查询结果所涉及到的所有属性信息
     */
    @Data
    public static class AttrVo{
        private Long attrId;
        private String attrName;
        private List<String> attrValues;
    }


}
